Top 10k strings from Forth v1.1a (1983)(Melbourne House)[re-release].tzx
in <root> / bin / z80 / software / Sinclair Spectrum Collection TOSEC.exe / Sinclair ZX Spectrum - Utilities & Educational / Sinclair ZX Spectrum - Utilities & Educational - [TZX] (TOSEC-v2007-01-01) /
Back to the directory listing
3 DISC 1 ~*h^####^#V 1 iYdkb&b3esa 1 gng*h^+p+q"h^ 1 forth (#@^| 1 fig-FORTH 1.1A,`Gh 1 bng*h^+p+q"h^ 1 bRq}^R^}^f^ 1 a*h^^#V#"h^ 1 `saInBbInO` 1 _*h^++++"h^ 1 MON ~ 1 FORTH | 1 EMPTY-BUFFER 1 DEFINITION 1 Created with Ramsoft MakeTZX 1 Caaa*h^^#V#s#r 1 5bOb0_AeOb 1 48K SPECTRUM Ha 1 .aJa*h^N#F#"h^ 1 *h^+r+s"h^ 1 " SX @ SY @ OVER 1+ OVER AT ." 1 " LOOP 7 PAPER 10 RND 2 * DX ! 30 DY ! DX @ DY @ OVER 1+ OVER 2 INK AT ." 1 " ENDIF PRBLCS MAZE @ 4 < IF 2 CY ! 28 SY ! 3 RND 1 - 2 * CX +! 3 RND 1 - 2 * SX +! ELSE MAZE @ 5 > IF 26 CY ! ENDIF MAZE 4 = IF 16 CY ENDIF MX @ SX @ = IF 20 SX ! ENDIF 23672 @ 3 MOD 0= IF MX @ SX @ > IF 2 SX +! ELSE -2 SX +! ENDIF ENDIF MAZE @ 4 > IF MX @ CX @ > IF 2 CX +! ELSE -2 CX +! ENDIF ENDIF MY @ SY @ > IF 2 SY +! ELSE -2 SY +! ENDIF MAZE @ 5 > IF MY @ CY @ > IF 2 CY +! ELSE -2 CY +! ENDIF ENDIF ENDIF SX @ DUP 0< IF 0 SX ! ENDIF 20 > IF 20 SX ! ENDIF SY @ DUP 0< IF 0 SY ! ENDIF 28 > IF 28 SY ! ENDIF CX @ DUP 0< IF 0 CX ! ENDIF 20 > IF 20 CX ! ENDIF CY @ DUP 0< IF 0 CY ! ENDIF 28 > IF 28 CY ! ENDIF PRSHAPE ; : GAME BEGIN CHECK MOVE PRSC SHMOVE AGAIN ; --> : INST CLS 1 INK 9 2 AT ." Do you want instructions" 7 INK KEY KEY 89 = IF 2 BORDER 2 PAPER 7 INK CLS ." 1 " CR CR CR 6 INK ." The object of the game is to" CR ." gain as many points as" CR ." possible by picking up the" CR ." key and using it to" ." unlock" CR ." the door. " 1 BRIGHT ." BUT" 0 BRIGHT ." you must" CR ." avoid the shapes which" CR ." are trying" ." to catch you." CR ." At each new maze the shapes" CR ." become more difficult to avoid." CR CR ." Press any key to continue" 2 INK KEY --> CR CR 5 INK ." Controls:" 7 INK CR CR 4 SPACES ." Z Left" 7 SPACES ." X Right" CR CR 4 SPACES ." M Down" 7 SPACES ." K Up" CR CR CR 5 INK ." Scores:" CR 7 INK CR 1 " CR ." 1 " CR ." 1 " CR ." 1 " AT ." 1 " ; : PRBLANK 1 INK MX @ MY @ OVER 1+ OVER AT 2 SPACES AT 2 SPACES ; : PRMAZE MAZE @ 5 * 5 + 0 DO 10 RND 2 * 14 RND 2 * OVER 1+ OVER AT ." 1 " 8 RND 2 * 4 + KX ! 16 KY ! KX @ KY @ OVER 1+ OVER 3 INK AT ." 1 " 57 23693 C! ; : SHMOVE KEY? @ 0= IF 3 INK KX @ KY @ OVER 1+ OVER AT ." 1 " 2 INK DX @ DY @ OVER 1+ OVER AT ." 1 " 13 11 AT ." 1 " 12 11 AT ." 1 " 57 23693 C! TUNE3 QUIT ; : CRASH 10 0 DO 256 0 DO I 254 OUTP LOOP LOOP 6 BORDER -1 LIVES +! LIVES @ 0= IF FIN ENDIF 0 MX ! 0 MY ! 18 SX ! 28 SY ! PAUSE CLS 28 23693 C! PRMAZE PRMAN TUNE3 ; : Z 0 23672 ! ; : A 10000 23672 @ - 75 / SCORE +! SCORE @ 0< IF 0 SCORE ! ENDIF ; --> : CHECK MX @ DUP 0< IF CRASH ENDIF 20 > IF CRASH ENDIF MY @ DUP 0< IF CRASH ENDIF 30 > IF CRASH ENDIF MX @ MY @ ATTR CASE 231 OF CRASH ENDOF 28 OF CRASH ENDOF 58 OF KEY? @ 0= IF CRASH ELSE 0 KEY? ! 100 SCORE +! NMAZE CLS A 28 23693 C! PRMAZE PRMAN Z ENDIF ENDOF 59 OF 1 KEY? ! TUNE1 10 SCORE +! ENDOF ENDCASE ; : DOWN 2 MX +! ; 1 " 57 23693 C! 2 0 AT ." " 3 0 AT ." " ; : TUNE1 1000 500 DO 10 I BLEEP 50 +LOOP ; : TUNE2 500 1000 DO 10 I BLEEP I -5 / +LOOP ; PRMAZE PRMAN : PAUSE 32767 0 DO LOOP ; : NMAZE 5 0 DO TUNE1 TUNE2 LOOP 1 MAZE +! PAUSE 0 MX ! 0 MY ! ; : TUNE3 1500 500 DO 50 I BLEEP 100 +LOOP 400 600 DO 30 I BLEEP -25 +LOOP 10 0 DO TUNE2 LOOP ; 6 BORDER TUNE3 --> 0 VARIABLE CX 0 VARIABLE CY 0 VARIABLE SX 0 VARIABLE SY : FIN 50 0 DO 127 87 PLOT 255 RND 175 RND DRAW LOOP CLS 10 0 DO TUNE1 LOOP 5 9 AT ." You scored " 2 INK SCORE @ . 1 INK 7 7 AT ." You reached maze " 3 INK MAZE @ . 1 INK 9 5 AT ." To replay type......." 235 23693 C! 11 11 AT ." 1 Abersoft:1983,` 1